package models

import "time"

type GetReportsRequest struct {
	ReportTypes        []string  // 可选：报告类型
	ProcessingStatuses []string  // 可选：处理状态
	MarketplaceIds     []string  // 可选：市场 ID
	PageSize           int       // 可选：分页大小
	CreatedSince       time.Time // 可选：起始创建时间
	CreatedUntil       time.Time // 可选：截止创建时间
	NextToken          string    // 可选：分页标识
}

// Report structure for response
type Report struct {
	ReportId            string    `json:"reportId"`
	ReportType          string    `json:"reportType"`
	ProcessingStatus    string    `json:"processingStatus"`
	MarketplaceIds      []string  `json:"marketplaceIds"`
	ReportDocumentId    string    `json:"reportDocumentId"`
	CreatedTime         time.Time `json:"createdTime"`
	LastUpdatedTime     time.Time `json:"lastUpdatedTime"`
	ProcessingStartTime time.Time `json:"processingStartTime"`
	ProcessingEndTime   time.Time `json:"processingEndTime"`
}

// Response for GetReports
type GetReportsResponse struct {
	Reports   []Report `json:"reports"`
	NextToken string   `json:"nextToken"`
}
